<!DOCTYPE html PUBLIC "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
  <meta http-equiv="Content-Type"
 content="text/html; charset=iso-8859-1">
  <meta name="Author" content="Venkita Subramonian">
  <meta name="GENERATOR"
 content="Mozilla/4.76 [en] (Windows NT 5.0; U) [Netscape]">
  <title>BasicSP example using CIAO Static Configurator</title>
<!-- $Id$ -->
</head>
<body>
This example illustrates
how to use the CIAO static configurator for building applications
statically.
For an example using RTCORBA policies, see <a
 href="static_config_rtexample.html">BasicSP with RTCORBA extensions</a>.
From the <a href="../examples/OEP/BasicSP">BasicSP</a> directory do
the
following.
<p><b><tt>&gt; cd descriptors</tt></b>
<br>
<b><tt>&gt; $CIAO_ROOT/tools/static_configurator/Static_Assembly_Parser
-a BasicSP.cad</tt></b>
</p>
<p>The following files are generated -
</p>
<p><a href="#Static_Assembly_Config.h">Static_Assembly_Config.h</a>
<br>
<a href="#Static_CCM_App.cpp">Static_CCM_App.cpp</a>
<br>
<a href="#Static_CCM_App.mpc">Static_CCM_App.mpc</a>
</p>
<p><a href="#Static_Assembly_Config.h">Static_Assembly_Config.h</a>
contains
the intermediate representation of all the parsed component and
assembly
information obtained from the XML files. <a href="#Static_CCM_App.cpp">Static_CCM_App.cpp</a>&nbsp;
contains the main driver application. Here a runtime <a
 href="#static%20config%20engine">static
configuration engine</a> is used to create containers, homes,
components,
etc and then establish necessary connections between the components. In
the BasicSP example, an external controller&nbsp; (see <tt><a
 href="../examples/OEP/BasicSP/README">$CIAO_ROOT/examples/OEP/BasicSP/README</a></tt>)
is used to start or stop a pulser. The generated main driver
application
(Static_CCM_App.cpp) is <a href="#Modified%20Static_CCM_App.cpp">modified</a>
to add code to trigger the pulser object on. The generated .mpc file is
<a href="#Modified%20Static_CCM_App.mpc">modified</a>
to add all other necessary files so that the application can be built
statically.
Note that the static configurator only generates only certain file
names
in the .mpc file. These filenames are obtained from the XML descriptor
files. All other necessary files have to be added manually as
indicated.
</p>
<p>Now the static build files can be generated by running the mpc
utility.
</p>
<p><b><tt>&gt; cd ..</tt></b>
<br>
<b><tt>&gt; $ACE_ROOT/bin/mpc -static Static_CCM_App.mpc</tt></b>
</p>
<p><a name="Static_Assembly_Config.h"></a><b><u>Static_Assembly_Config.h</u></b>
<br>
<tt><font color="#3333ff">#include "Static_Assembly.h"</font></tt>
</p>
<p><tt><font color="#3333ff">#include "CCM_ContainerC.h"</font></tt>
<br>
<tt><font color="#3333ff">#include "Container_Base.h"</font></tt>
</p>
<p><tt><font color="#3333ff">//Containers</font></tt>
<br>
<tt><font color="#3333ff">CIAO::Static_Config::ContainerAttributes
containers_table_[]=</font></tt>
<br>
<tt><font color="#3333ff">{</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{"", 0}</font></tt>
<br>
<tt><font color="#3333ff">};</font></tt>
<br>
&nbsp;
</p>
<p><tt><font color="#3333ff">extern "C"
::Components::HomeExecutorBase_ptr
createECHome_Impl (void);</font></tt>
<br>
<tt><font color="#3333ff">extern "C" ::PortableServer::Servant
createECHome_Servant</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; (::Components::HomeExecutorBase_ptr
p,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ::CIAO::Session_Container *c</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ACE_ENV_ARG_DECL_WITH_DEFAULTS);</font></tt>
<br>
<tt><font color="#3333ff">extern "C" ::Components::HomeExecutorBase_ptr
createBMDeviceHome_Impl (void);</font></tt>
<br>
<tt><font color="#3333ff">extern "C" ::PortableServer::Servant
createBMDeviceHome_Servant</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; (::Components::HomeExecutorBase_ptr
p,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ::CIAO::Session_Container *c</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ACE_ENV_ARG_DECL_WITH_DEFAULTS);</font></tt>
<br>
<tt><font color="#3333ff">extern "C" ::Components::HomeExecutorBase_ptr
createBMClosedEDHome_Impl (void);</font></tt>
<br>
<tt><font color="#3333ff">extern "C" ::PortableServer::Servant
createBMClosedEDHome_Servant</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; (::Components::HomeExecutorBase_ptr
p,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ::CIAO::Session_Container *c</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ACE_ENV_ARG_DECL_WITH_DEFAULTS);</font></tt>
<br>
<tt><font color="#3333ff">extern "C" ::Components::HomeExecutorBase_ptr
createBMDisplayHome_Impl (void);</font></tt>
<br>
<tt><font color="#3333ff">extern "C" ::PortableServer::Servant
createBMDisplayHome_Servant</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; (::Components::HomeExecutorBase_ptr
p,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ::CIAO::Session_Container *c</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ACE_ENV_ARG_DECL_WITH_DEFAULTS);</font></tt>
<br>
<tt><font color="#3333ff">//Homes</font></tt>
<br>
<tt><font color="#3333ff">CIAO::Static_Config::HomeAttributes
homes_table_[]=</font></tt>
<br>
<tt><font color="#3333ff">{</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{"a_ECHome",
"DCE:3148F760-F2ED-4204-A775-6B972C10E8CB",
"createECHome_Impl", createECHome_Impl,
"DCE:75309233-0E0A-4cfb-B186-3E99F69B1D40",
"createECHome_Servant", createECHome_Servant, 0, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{"a_BMDeviceHome",
"DCE:82C2B032-37F0-4315-A59F-7020D3264E4D",
"createBMDeviceHome_Impl", createBMDeviceHome_Impl,
"DCE:93D254CF-9538-44e8-BB98-AABCD134ADD3",
"createBMDeviceHome_Servant", createBMDeviceHome_Servant, 0, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{"a_BMClosedEDHome",
"DCE:8E6C468D-A39F-46b4-962B-265F1AA8D538",
"createBMClosedEDHome_Impl", createBMClosedEDHome_Impl,
"DCE:CDC06FCA-50FC-43ca-8ECC-BEFBD33FEE78",
"createBMClosedEDHome_Servant", createBMClosedEDHome_Servant, 0, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{"a_BMDisplayHome",
"DCE:8E92655E-CA07-46C8-B127-0F0872A8CC29",
"createBMDisplayHome_Impl", createBMDisplayHome_Impl,
"DCE:D7984625-8561-431d-9927-4E498B317C02",
"createBMDisplayHome_Servant", createBMDisplayHome_Servant, 0, 0 }</font></tt>
<br>
<tt><font color="#3333ff">};</font></tt>
<br>
&nbsp;
</p>
<p><tt><font color="#3333ff">//Components</font></tt>
<br>
<tt><font color="#3333ff">CIAO::Static_Config::ComponentAttributes
components_table_[]=</font></tt>
<br>
<tt><font color="#3333ff">{</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{"a_EC", 0, 0, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{"a_BMDevice", -1, -1, 1 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{"a_BMClosedED", -1, -1, 2 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{"a_BMDisplay", -1, -1, 3 }</font></tt>
<br>
<tt><font color="#3333ff">};</font></tt>
<br>
&nbsp;
</p>
<p><tt><font color="#3333ff">//Component Registrations</font></tt>
<br>
<tt><font color="#3333ff">CIAO::Assembly_Placement::componentinstantiation::Register_Info
component_registrations_table_[]=</font></tt>
<br>
<tt><font color="#3333ff">{</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Placement::componentinstantiation::COMPONENT,
CIAO::Assembly_Placement::componentinstantiation::IORFILE, "", "ec.ior"
}</font></tt>
<br>
<tt><font color="#3333ff">};</font></tt>
<br>
&nbsp;
</p>
<p><tt><font color="#3333ff">//Connections</font></tt>
<br>
<tt><font color="#3333ff">CIAO::Static_Config::ConnectionAttributes
connections_table_[]=</font></tt>
<br>
<tt><font color="#3333ff">{</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::PUBLISHER_CONSUMER,
"", "timeout", 0, 1, 0, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::PUBLISHER_CONSUMER,
"", "data_available", 3, 4, 0, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::PUBLISHER_CONSUMER,
"", "out_avail", 6, 7, 0, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::INTERFACE,
"", "datain", 9, 10, 0, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::INTERFACE,
"", "comp_data", 12, 13, 0, 0 }</font></tt>
<br>
<tt><font color="#3333ff">};</font></tt>
<br>
&nbsp;
</p>
<p><tt><font color="#3333ff">//Resolver Infos</font></tt>
<br>
<tt><font color="#3333ff">CIAO::Static_Config::ResolveInfoAttributes
resolvers_table_[]=</font></tt>
<br>
<tt><font color="#3333ff">{</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::COMP_IDREF,
"a_EC", -1, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::CONSUMER,
"timeout", 2, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::COMP_IDREF,
"a_BMDevice", -1, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::COMP_IDREF,
"a_BMDevice", -1, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::CONSUMER,
"in_avail", 5, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::COMP_IDREF,
"a_BMClosedED", -1, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::COMP_IDREF,
"a_BMClosedED", -1, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::CONSUMER,
"data_ready", 8, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::COMP_IDREF,
"a_BMDisplay", -1, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::COMP_IDREF,
"a_BMClosedED", -1, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::PROVIDER,
"data_read", 11, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::COMP_IDREF,
"a_BMDevice", -1, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::COMP_IDREF,
"a_BMDisplay", -1, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::PROVIDER,
"dataout", 14, 0 },</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;{CIAO::Assembly_Connection::COMP_IDREF,
"a_BMClosedED", -1, 0 }</font></tt>
<br>
<tt><font color="#3333ff">};</font></tt>
</p>
<p><a name="Static_CCM_App.cpp"></a><b><u>Static_CCM_App.cpp</u></b>
<br>
<tt><font color="#3333ff">#include "ComponentServer_Impl.h"</font></tt>
<br>
<tt><font color="#3333ff">#include "CIAO_ServersC.h"</font></tt>
<br>
<tt><font color="#3333ff">#include "Server_init.h"</font></tt>
<br>
<tt><font color="#3333ff">#include "Static_Configurator.h"</font></tt>
<br>
<tt><font color="#3333ff">#include "ace/SString.h"</font></tt>
<br>
<tt><font color="#3333ff">#include "ace/Get_Opt.h"</font></tt>
</p>
<p><tt><font color="#3333ff">#include "Static_Assembly_Config.h"</font></tt>
</p>
<p><tt><font color="#3333ff">char *ior_file_name_ = "comp_serv.ior";</font></tt>
</p>
<p><tt><font color="#3333ff">int</font></tt>
<br>
<tt><font color="#3333ff">parse_args (int argc, char *argv[])</font></tt>
<br>
<tt><font color="#3333ff">{</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ACE_Get_Opt get_opts (argc, argv,
"k:o:");</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; int c;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp; while ((c = get_opts ()) != -1)</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp; switch (c)</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case
'o':&nbsp;
// get the file name to write to</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ior_file_name_
= get_opts.opt_arg ();</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case
'?':&nbsp;
// display help for use of the server.</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; default:</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ERROR_RETURN ((LM_ERROR,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"usage:&nbsp; %s\n"</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"-o &lt;ior_output_file&gt;\n"</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"\n",</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
argv [0]),</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-1);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp; return 0;</font></tt>
<br>
<tt><font color="#3333ff">}</font></tt>
<br>
&nbsp;
</p>
<p><tt><font color="#3333ff">int</font></tt>
<br>
<tt><font color="#3333ff">main (int argc, char *argv[])</font></tt>
<br>
<tt><font color="#3333ff">{</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ACE_TRY_NEW_ENV</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp; {</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Initialize
orb</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CORBA::ORB_var
orb = CORBA::ORB_init (argc,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
argv,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
0</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CIAO::Server_init
(orb.in ());</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if
(parse_args
(argc, argv) != 0)</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
return -1;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Get
reference
to Root POA.</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CORBA::Object_var
obj</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
= orb-&gt;resolve_initial_references ("RootPOA"</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
PortableServer::POA_var
poa</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
= PortableServer::POA::_narrow (obj.in ()</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Activate
POA manager</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
PortableServer::POAManager_var
mgr</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
= poa-&gt;the_POAManager (ACE_ENV_SINGLE_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
mgr-&gt;activate
(ACE_ENV_SINGLE_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CIAO::ComponentServer_Impl
*comserv_servant;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CIAO::Static_Configurator
configurator;</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int
containers_table_size
=</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
sizeof
(containers_table_)/sizeof(CIAO::Static_Config::ContainerAttributes);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int
homes_table_size
=</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
sizeof (homes_table_)/sizeof(CIAO::Static_Config::HomeAttributes);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int
components_table_size
=</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
sizeof
(components_table_)/sizeof(CIAO::Static_Config::ComponentAttributes);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int
component_registrations_table_size
=</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
sizeof
(component_registrations_table_)/sizeof(CIAO::Assembly_Placement::componentinstantiation::Register_Info);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int
connections_table_size
=</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
sizeof
(connections_table_)/sizeof(CIAO::Static_Config::ConnectionAttributes);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int
resolvers_table_size
=</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
sizeof
(resolvers_table_)/sizeof(CIAO::Static_Config::ResolveInfoAttributes);</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CIAO::HOMECREATOR_FUNCPTR_MAP
home_creator_fptr_map;</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CIAO::HOMESERVANTCREATOR_FUNCPTR_MAP
homesvnt_creator_fptr_map;</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CIAO::Static_Config_EntryPoints_Maps
maps;</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
maps.home_creator_funcptr_map_
= &amp;home_creator_fptr_map;</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
maps.home_servant_creator_funcptr_map_
= &amp;homesvnt_creator_fptr_map;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int i=0;</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (i=0;
i&lt;homes_table_size; ++i)</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
home_creator_fptr_map.bind (homes_table_[i].executor_entrypt_,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
homes_table_[i].executor_fptr_);</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
homesvnt_creator_fptr_map.bind (homes_table_[i].servant_entrypt_,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
homes_table_[i].servant_fptr_);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_NEW_RETURN
(comserv_servant,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CIAO::ComponentServer_Impl (orb.in (),</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
poa.in (),</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&amp;maps),</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-1);</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
PortableServer::ServantBase_var
safe_servant (comserv_servant);</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Components::ConfigValues
configs;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
comserv_servant-&gt;init
(configs</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //
Configuring
ComponentServer.</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
PortableServer::ObjectId_var
cs_oid</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
= poa-&gt;activate_object (comserv_servant</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; obj =
poa-&gt;id_to_reference
(cs_oid.in ()</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Components::Deployment::ComponentServer_var
comserv_obj =</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Components::Deployment::ComponentServer::_narrow (obj.in ()</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if
(CORBA::is_nil
(comserv_obj.in ()))</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ERROR_RETURN ((LM_ERROR, "Unable to activate ComponentServer
object\n"),
-1);</font></tt>
<br>
&nbsp;
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Components::Deployment::ServerActivator_var
activator;</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Components::ConfigValues_var
config = new Components::ConfigValues;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
comserv_servant-&gt;set_objref
(activator.in (),</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
config,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
comserv_obj.in ()</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</font></tt>
</p>
<p><a name="static config engine"></a><tt><font color="#ff0000">configurator.configure
(orb.in (),</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
comserv_obj.in (),</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
containers_table_,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
containers_table_size,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
homes_table_,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
homes_table_size,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
components_table_,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
components_table_size,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
component_registrations_table_,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
component_registrations_table_size,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
connections_table_,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
connections_table_size,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
resolvers_table_,</font></tt>
<br>
<tt><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
resolvers_table_size);</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CORBA::String_var
str = orb-&gt;object_to_string (comserv_obj.in ()</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CIAO::Utility::write_IOR
(ior_file_name_, str.in ());</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_DEBUG
((LM_INFO, "ComponentServer IOR: %s\n", str.in ()));</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_DEBUG
((LM_DEBUG,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"Running ComponentServer...\n"));</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Run the
main event loop for the ORB.</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; orb-&gt;run
(ACE_ENV_SINGLE_ARG_PARAMETER);</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp; }</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ACE_CATCHANY</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp; {</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_PRINT_EXCEPTION
(ACE_ANY_EXCEPTION,</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"server::main \n");</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 1;</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp; }</font></tt>
<br>
<tt><font color="#3333ff">&nbsp; ACE_ENDTRY;</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp; return 0;</font></tt>
<br>
<tt><font color="#3333ff">}</font></tt>
</p>
<p><a name="Static_CCM_App.mpc"></a><b><u>Static_CCM_App.mpc</u></b>
<br>
<tt><font color="#3333ff">project(Static_CCM_App) : ciao_server,
ciao_client,
rtcorba, rtportableserver, iortable, acexml {</font></tt>
<br>
<tt><font color="#3333ff">includes +=
$(ACE_ROOT)/TAO/CIAO/tools/Assembly_Deployer</font></tt>
<br>
<tt><font color="#3333ff">includes +=
$(ACE_ROOT)/TAO/CIAO/tools/static_configurator</font></tt>
<br>
<tt><font color="#3333ff">libs += CIAO_XML_Helpers Static_Configurator</font></tt>
<br>
<tt><font color="#3333ff">after += CIAO_XML_Helpers Static_Configurator</font></tt>
<br>
&nbsp;
</p>
<p><tt><font color="#3333ff">libs += EC_exec</font></tt>
<br>
<tt><font color="#3333ff">after += EC_exec</font></tt>
<br>
<tt><font color="#3333ff">libs += EC_svnt</font></tt>
<br>
<tt><font color="#3333ff">after += EC_svnt</font></tt>
<br>
<tt><font color="#3333ff">libs += BMDevice_exec</font></tt>
<br>
<tt><font color="#3333ff">after += BMDevice_exec</font></tt>
<br>
<tt><font color="#3333ff">libs += BMDevice_svnt</font></tt>
<br>
<tt><font color="#3333ff">after += BMDevice_svnt</font></tt>
<br>
<tt><font color="#3333ff">libs += BMClosedED_exec</font></tt>
<br>
<tt><font color="#3333ff">after += BMClosedED_exec</font></tt>
<br>
<tt><font color="#3333ff">libs += BMClosedED_svnt</font></tt>
<br>
<tt><font color="#3333ff">after += BMClosedED_svnt</font></tt>
<br>
<tt><font color="#3333ff">libs += BMDisplay_exec</font></tt>
<br>
<tt><font color="#3333ff">after += BMDisplay_exec</font></tt>
<br>
<tt><font color="#3333ff">libs += BMDisplay_svnt</font></tt>
<br>
<tt><font color="#3333ff">after += BMDisplay_svnt</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp; Source_Files {</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Static_CCM_App.cpp</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp; }</font></tt>
</p>
<p><tt><font color="#3333ff">&nbsp;&nbsp;&nbsp; IDL_Files {</font></tt>
<br>
<tt><font color="#3333ff">&nbsp;&nbsp;&nbsp; }</font></tt>
<br>
<tt><font color="#3333ff">}</font></tt>
</p>
<p><a name="Modified Static_CCM_App.cpp"></a><b><u>Modified
Static_CCM_App.cpp</u></b> <br>
</p>
<p><small><span style="font-weight: bold;">(Highlighted text is
manually added to the
generated .cpp file)<br>
<br>
</span></small><tt>#include "ComponentServer_Impl.h"</tt>
<br>
<tt>#include "CIAO_ServersC.h"</tt>
<br>
<tt>#include "Server_init.h"</tt>
<br>
<tt>#include "Static_Configurator.h"</tt>
<br>
<tt>#include "ace/SString.h"</tt>
<br>
<tt>#include "ace/Get_Opt.h"</tt>
</p>
<p><tt>#include "Static_Assembly_Config.h"</tt>
</p>
<p><tt>char *ior_file_name_ = "comp_serv.ior";</tt>
<br>
<b><tt><font color="#990000">int rate = 2;</font></tt></b>
</p>
<p><tt>int</tt>
<br>
<tt>parse_args (int argc, char *argv[])</tt>
<br>
<tt>{</tt>
<br>
<tt>&nbsp; ACE_Get_Opt get_opts (argc, argv, "k:o:");</tt>
<br>
<tt>&nbsp; int c;</tt>
</p>
<p><tt>&nbsp; while ((c = get_opts ()) != -1)</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp; switch (c)</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case 'o':&nbsp; // get the file
name to write to</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ior_file_name_ =
get_opts.opt_arg
();</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case '?':&nbsp; // display help
for
use of the server.</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; default:</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_ERROR_RETURN
((LM_ERROR,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"usage:&nbsp; %s\n"</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"-o &lt;ior_output_file&gt;\n"</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"\n",</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
argv [0]),</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-1);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</tt>
</p>
<p><tt>&nbsp; return 0;</tt>
<br>
<tt>}</tt>
<br>
&nbsp;
</p>
<p><tt>int</tt>
<br>
<tt>main (int argc, char *argv[])</tt>
<br>
<tt>{</tt>
<br>
<tt>&nbsp; ACE_TRY_NEW_ENV</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp; {</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Initialize orb</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CORBA::ORB_var orb = CORBA::ORB_init
(argc,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
argv,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
0</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CIAO::Server_init (orb.in ());</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (parse_args (argc, argv) != 0)</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return -1;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Get reference to Root POA.</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CORBA::Object_var obj</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
orb-&gt;resolve_initial_references
("RootPOA"</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PortableServer::POA_var poa</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
PortableServer::POA::_narrow
(obj.in ()</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Activate POA manager</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PortableServer::POAManager_var mgr</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = poa-&gt;the_POAManager
(ACE_ENV_SINGLE_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mgr-&gt;activate
(ACE_ENV_SINGLE_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CIAO::ComponentServer_Impl
*comserv_servant;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CIAO::Static_Configurator
configurator;</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int containers_table_size =</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sizeof
(containers_table_)/sizeof(CIAO::Static_Config::ContainerAttributes);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int homes_table_size =</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sizeof
(homes_table_)/sizeof(CIAO::Static_Config::HomeAttributes);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int components_table_size =</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sizeof
(components_table_)/sizeof(CIAO::Static_Config::ComponentAttributes);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int
component_registrations_table_size
=</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sizeof
(component_registrations_table_)/sizeof(CIAO::Assembly_Placement::componentinstantiation::Register_Info);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int connections_table_size =</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sizeof
(connections_table_)/sizeof(CIAO::Static_Config::ConnectionAttributes);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int resolvers_table_size =</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sizeof
(resolvers_table_)/sizeof(CIAO::Static_Config::ResolveInfoAttributes);</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CIAO::HOMECREATOR_FUNCPTR_MAP
home_creator_fptr_map;</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CIAO::HOMESERVANTCREATOR_FUNCPTR_MAP
homesvnt_creator_fptr_map;</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CIAO::Static_Config_EntryPoints_Maps
maps;</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; maps.home_creator_funcptr_map_ =
&amp;home_creator_fptr_map;</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
maps.home_servant_creator_funcptr_map_
= &amp;homesvnt_creator_fptr_map;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int i=0;</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (i=0; i&lt;homes_table_size;
++i)</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
home_creator_fptr_map.bind
(homes_table_[i].executor_entrypt_,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
homes_table_[i].executor_fptr_);</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
homesvnt_creator_fptr_map.bind
(homes_table_[i].servant_entrypt_,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
homes_table_[i].servant_fptr_);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_NEW_RETURN (comserv_servant,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CIAO::ComponentServer_Impl (orb.in (),</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
poa.in (),</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&amp;maps),</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-1);</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PortableServer::ServantBase_var
safe_servant
(comserv_servant);</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Components::ConfigValues configs;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; comserv_servant-&gt;init (configs</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Configuring ComponentServer.</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PortableServer::ObjectId_var cs_oid</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
poa-&gt;activate_object
(comserv_servant</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; obj = poa-&gt;id_to_reference
(cs_oid.in
()</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Components::Deployment::ComponentServer_var
comserv_obj =</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Components::Deployment::ComponentServer::_narrow
(obj.in ()</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (CORBA::is_nil (comserv_obj.in
()))</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_ERROR_RETURN
((LM_ERROR,
"Unable to activate ComponentServer object\n"), -1);</tt>
<br>
&nbsp;
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Components::Deployment::ServerActivator_var
activator;</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Components::ConfigValues_var config
= new Components::ConfigValues;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; comserv_servant-&gt;set_objref
(activator.in
(),</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
config,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
comserv_obj.in ()</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK;</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; configurator.configure (orb.in (),</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
comserv_obj.in (),</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
containers_table_,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
containers_table_size,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
homes_table_,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
homes_table_size,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
components_table_,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
components_table_size,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
component_registrations_table_,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
component_registrations_table_size,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
connections_table_,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
connections_table_size,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
resolvers_table_,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
resolvers_table_size);</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CORBA::String_var str =
orb-&gt;object_to_string
(comserv_obj.in ()</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CIAO::Utility::write_IOR
(ior_file_name_,
str.in ());</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_DEBUG ((LM_INFO,
"ComponentServer
IOR: %s\n", str.in ()));</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_DEBUG ((LM_DEBUG,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"Running ComponentServer...\n"));</tt>
</p>
<p><b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CORBA::Object_var
pulser_obj</font></tt></b>
<br>
<b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
= orb-&gt;string_to_object ("file://ec.ior"</font></tt></b>
<br>
<b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt></b>
<br>
<b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_TRY_CHECK;</font></tt></b>
</p>
<p><b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
BasicSP::EC_var
pulser</font></tt></b>
<br>
<b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
= BasicSP::EC::_narrow (pulser_obj.in ()</font></tt></b>
<br>
<b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt></b>
<br>
<b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_TRY_CHECK;</font></tt></b>
</p>
<p><b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if
(CORBA::is_nil
(pulser.in ()))</font></tt></b>
<br>
<b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ERROR_RETURN ((LM_ERROR, "Unable to acquire 'EC' objref\n"), -1);</font></tt></b>
</p>
<p><b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
pulser-&gt;hertz
(rate</font></tt></b>
<br>
<b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_ENV_ARG_PARAMETER);</font></tt></b>
<br>
<b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_TRY_CHECK;</font></tt></b>
</p>
<p><b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_DEBUG
((LM_DEBUG, "Start up the Event services\n"));</font></tt></b>
</p>
<p><b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
pulser-&gt;start
(ACE_ENV_SINGLE_ARG_PARAMETER);</font></tt></b>
<br>
<b><tt><font color="#990000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
ACE_TRY_CHECK;</font></tt></b>
</p>
<p><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Run the main event loop for
the
ORB.</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; orb-&gt;run
(ACE_ENV_SINGLE_ARG_PARAMETER);</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_TRY_CHECK</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp; }</tt>
<br>
<tt>&nbsp; ACE_CATCHANY</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp; {</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_PRINT_EXCEPTION
(ACE_ANY_EXCEPTION,</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
"server::main \n");</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 1;</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp; }</tt>
<br>
<tt>&nbsp; ACE_ENDTRY;</tt>
</p>
<p><tt>&nbsp; return 0;</tt>
<br>
<tt>}</tt>
</p>
<p><a name="Modified Static_CCM_App.mpc"></a><b><u>Modified
Static_CCM_App.mpc</u></b> <br>
</p>
<p><small><span style="font-weight: bold;">(Highlighted text is
manually added to the
generated .cpp file)<br>
<br>
</span></small><tt>project(Static_CCM_App) : ciao_server, ciao_client,
rtcorba,
rtportableserver,
iortable, acexml {</tt>
<br>
<tt>includes += $(ACE_ROOT)/TAO/CIAO/tools/Assembly_Deployer</tt>
<br>
<tt>includes += $(ACE_ROOT)/TAO/CIAO/tools/static_configurator</tt>
<br>
<tt>libs += CIAO_XML_Helpers Static_Configurator</tt>
<br>
<tt>after += CIAO_XML_Helpers Static_Configurator</tt>
</p>
<p><b><tt><font color="#990000">libs += BasicSP_stub BasicSP_svnt</font></tt></b>
<br>
<b><tt><font color="#990000">after += BasicSP_stub BasicSP_svnt</font></tt></b>
<br>
<tt>libs += EC_exec</tt>
<br>
<tt>after += EC_exec</tt>
<br>
<tt>libs += EC_svnt <b><font color="#990000">EC_stub</font></b></tt>
<br>
<tt>after += EC_svnt <b><font color="#990000">EC_stub</font></b></tt>
<br>
<tt>libs += BMDevice_exec</tt>
<br>
<tt>after += BMDevice_exec</tt>
<br>
<tt>libs += BMDevice_svnt <b><font color="#990000">BMDevice_stub</font></b></tt>
<br>
<tt>after += BMDevice_svnt <b><font color="#990000">BMDevice_stub</font></b></tt>
<br>
<tt>libs += BMClosedED_exec</tt>
<br>
<tt>after += BMClosedED_exec</tt>
<br>
<tt>libs += BMClosedED_svnt <b><font color="#990000">BMClosedED_stub</font></b></tt>
<br>
<tt>after += BMClosedED_svnt <b><font color="#990000">BMClosedED_stub</font></b></tt>
<br>
<tt>libs += BMDisplay_exec</tt>
<br>
<tt>after += BMDisplay_exec</tt>
<br>
<tt>libs += BMDisplay_svnt <b><font color="#990000">BMDisplay_stub</font></b></tt>
<br>
<tt>after += BMDisplay_svnt <b><font color="#990000">BMDisplay_stub</font></b></tt>
</p>
<p><tt>&nbsp;&nbsp; Source_Files {</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Static_CCM_App.cpp</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp; }</tt>
</p>
<p><tt>&nbsp;&nbsp;&nbsp; IDL_Files {</tt>
<br>
<tt>&nbsp;&nbsp;&nbsp; }</tt>
<br>
<tt>}</tt>
<br>
&nbsp;
</p>
</body>
</html>
